package com.nineclock.system.service;

import com.nineclock.system.dto.DepartmentOrUserSimpleDTO;
import com.nineclock.system.dto.SysDepartmentDTO;

import java.util.List;

public interface SysDepartmentService {

    /**
     * 查询当前企业的部门列表
     * @return
     */
    public List<SysDepartmentDTO> queryDepartments();

    /**
     * 根据当前企业查询企业下的部门ID集合
     * @return
     */
    public List<Long> queryDepartmentIds();

    /**
     * 根据部门ID查询,其下的直属部门列表 , 及 员工数据
     * @param id
     * @param includeMember
     * @return
     */
    public List<DepartmentOrUserSimpleDTO> querySimleDepartment(Long id, Integer includeMember);

    /**
     * 根据员工ID , 依次查询其所属的部门ID
     * @param companyUserId
     * @return
     */
    public List<Long> queryDepartmentIdsByUserId(Long companyUserId);
}
